# -*- mode: python; coding: utf-8; -*-
##--------------------------------------------------------------------------##
##
## Copyright (C) 1998-2003 Markus Oberhumer <markus@oberhumer.com>
## Copyright (C) 2003 Mt. Hood Playing Card Co.
## Copyright (C) 2005-2010 Skomoroh <skomoroh@users.sourceforge.net>
## Copyright (C) 2010-2013 Jeremy Austin-Bardo <tjaustinbardo@gmail.com>
##
## This program is free software: you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation, either version 3 of the License.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program.  If not, see <http://www.gnu.org/licenses/>.
##
##--------------------------------------------------------------------------##
__docformat__ = 'restructuredtext en'

from . import  __common__ as mgame
from ...gamelib import info as gi


class Altar(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5001, short_name='Altar')
    __layout__ = ('0aaaacaaiaakaamaaoaaqaasaauaawaaCaaEaaacaccaicckccmccoccq'
                  'ccsccucawcaCcaEcaieckecmecoecqecsecueaweaigckgcmgcogcqgcs'
                  'gcugawgaiiakiamiaoiaqiasiauiawiaokaqkaamacmaomaqmaCmaEmaa'
                  'oacoaooaqoaCoaEohabhcbhCbhEbkpijpkipmhanhcnhCnhEnhpoobboD'
                  'bobnoDnvlcvncvpcvrcvtcvlevnevpevrevtevlgwngwpgwrgvtgCocCq'
                  'cCmeCoeCqeCse')
    __version__ = 7.70


class Arena(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5002, short_name='Arena')
    __layout__ = ('0eaadcaceabgaaiaaqabsacuadwaeyadaccccbecagcakcbmcaocascbu'
                  'ccwcdyccaebceaeeameauebwecyebagacgakgbmgaogawgbygcaibciae'
                  'iamiauibwicyidakcckbekagkakkbmkaokaskbukcwkdykeamdcmcembg'
                  'maimaqmbsmcumdwmeym')
    __version__ = 7.70


class Arena2(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5003, short_name='Arena 2')
    __layout__ = ('0daadcabeabgaaiaakaamaaoaaqaasabuabwadyadAadaccccbecagcau'
                  'cbwccycdAcdaecceaeeawecyedAedagccgaegawgcygdAgdaicciaeiaw'
                  'icyidAidakcckbekagkaukbwkcykdAkdamdcmbembgmaimasmbumbwmdy'
                  'mdAm')
    __version__ = 7.70


class Arrow(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5004, short_name='Arrow')
    __layout__ = ('0aaaaqbaacaccascaqdaudaaeaceaeeageaieakeameaoeaseaweaqfau'
                  'fayfaagacgaegaggaigakgamgaogasgawgaAgaCgaqhauhayhaaiaciae'
                  'iagiaiiakiamiaoiasiawiaqjaujaakackaskaqlaamhbchrdhbehdehf'
                  'ehhehjehlehnehpehtehrfhvfhbghdghfghhghjghlghnghpghtghxghr'
                  'hhvhhbihdihfihhihjihlihnihpihtihrjhbkoceoeeogeoieokeomeoo'
                  'eoqeosfocgoegoggoigokgomgoogoqgougoshocioeiogioiiokiomioo'
                  'ioqivfevhevjevlevnevpevfgvhgvjgvlgvngvpgvrgvfivhivjivlivn'
                  'ivpiCkeCmeCoeCkgCmgCogCqgCkiCmiCoi')
    __version__ = 7.70


class ArtModerne(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5005, short_name='Art Moderne')
    __layout__ = ('0acaaeaagaaiaakaamaaoaauaawaaabalcapcatcavcaxcaadaddaleap'
                  'easeauebxeaafacfalgangapgargatgavgaxgaahachaliapiasiauibx'
                  'iaajadjalkapkatkavkaxkaalacmaemagmaimakmammaomaumawmhdahf'
                  'ahhahjahlahnahvahxahuchwchychedhldhpdhaehtehvehdfhlfhpfha'
                  'ghsghughwghdhhlhhphhaihtihvihejhljhpjhukhwkhykhdmhfmhhmhj'
                  'mhlmhnmhvmhxmowaoyaovcoxcozcofdokdoueoweoyeoefokfomgotgov'
                  'goehokhouiowioyiofjokjovkoxkozkowmoymvgdvjdvffvjfvlgvfhvj'
                  'hvgjvjjChdCgfCifCkgCghCihChj')
    __version__ = 7.70


class Balance(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5006, short_name='Balance')
    __layout__ = ('0eoaeebbgbbibbkbbmbbqbbsbbubbwbeybeoccedcydcoeccfaefcgfcw'
                  'fayfcAfcogachaghawhaAhcoiaajacjaejagjaijaujawjayjaAjaCjco'
                  'kadlaflaxlazlcomagoaioakoamoaooaqoasoauoawohbjhdjhfjhhjhv'
                  'jhxjhzjhBjjeljylhhoijojloknokpojroitohvoocjoejogjowjoyjoA'
                  'jvdjvfjvxjvzjCejCyj')
    __version__ = 7.70


class Bat(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5007, short_name='Bat')
    __layout__ = ('0ecaeAaaabalbanbapbarbaCbcccaecayccAcaadandapdaCdcceaeebg'
                  'eaieauebweayecAeaafanfapfaCfbcgbegaggbigakgasgbugawgbygbA'
                  'gaahamhbohaqhaChbcibeiagibiiakiasibuiawibyibAiaajamjbojaq'
                  'jaCjcckaekbgkaikakkaskaukbwkaykcAkaalaolaClccmaemaimakmas'
                  'maumaymcAmaanaCnecobkobsoeAohobhodhofhaghCghaihCi')
    __version__ = 7.70


class Beatle(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5008, short_name='Beatle')
    __layout__ = ('0aeaagaauaawaaicakcamcaocaqcascaeeageaieakeameaoeaqeaseau'
                  'eadgafgahgajgalgangapgargatgavgaeiagiaiiakiamiaoiaqiasiau'
                  'iaikakkamkaokaqkaskaemagmaumawmhhbhtbhjchlchnchpchrchdehf'
                  'ehhehjehlehnehpehrehteiegiggiigikgimgiogiqgisghughdihfihh'
                  'ihjihlihnihpihrihtihjkhlkhnkhpkhrkhhlhtloceogeoieokeomeoo'
                  'eoqeoseociogioiiokiomiooioqiosivbdvhevjevlevnevpevrevfgvh'
                  'gvjgvlgvngvpgvrgvhivjivlivnivpivrivbjCaaCacCggCigCkgCmgCo'
                  'gCqgCakCam')
    __version__ = 7.70


class BigHole(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5009, short_name='Big Hole')
    __layout__ = ('0daadcadeadgadiadkadmadoaaaccccdecdgcdicdkccmcaocaaeccede'
                  'edkecmeaoeaagccgdegdkgcmgaogaaiccideidgidiidkicmiaoidakdc'
                  'kdekdgkdikdkkdmkdok')
    __version__ = 7.70


class Bizarre(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5010, short_name='Bizarre')
    __layout__ = ('0aaaaGadkbdmbdobdqbdsbdubdwbdkdcmdcodcqdcsdcuddwddkfcmfbo'
                  'fbqfbsfcufdwfdkhcmhbohaqhbshcuhdwhakjbmjcojdqjcsjbujawjak'
                  'lbmlcolcqlcslbulawlaknbmnbonbqnbsnbunawnakpampaopaqpaspau'
                  'pawpaaqaGq')
    __version__ = 7.70


class Boat(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5011, short_name='Boat')
    __layout__ = ('0alaapaataajcblcapcbtcavcahebjecleapectebveaxeafgbhgcjgdl'
                  'gapgdtgcvgbxgazgadibfichidjieliapietidvicxibziaBiapkaambc'
                  'mbembgmbimbkmbmmbombqmbsmbumbwmbymbAmbCmaEmadobfobhobjobl'
                  'obnobpobrobtobvobxobzoaBoaiqbkqbmqboqbqqbsqbuqawq')
    __version__ = 7.70


class Bug(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5012, short_name='Bug')
    __layout__ = ('0bhabnabtaajbapbavbcadaidakdamdaodaqdasdaudawdaceayeagfbi'
                  'fbkfbmfbofbqfbsfbufbwfaAfdegaygbchbghcihckhcmhcohcqhcshcu'
                  'hbwhaAhdeiayiagjbijbkjbmjbojbqjbsjbujbwjaAjackaykcalailak'
                  'lamlaolaqlaslaulawlajnapnavnbhobnobtohyhojfolfonfopforfot'
                  'fovfojjoljonjopjorjotjovjvjhvlhvnhvphvrhvthCkhCmhCohCqhCs'
                  'h')
    __version__ = 7.70


class Butterfly(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5013, short_name='Butterfly')
    __layout__ = ('0dmadqaaabaebaybaCbagccocawcaadaedaidaudaydaCdaceageakedo'
                  'easeaweaAeaafaefbifamfaqfbufayfaCfacgaggbkgeogbsgawgaAgaa'
                  'haehbihbmhbqhbuhayhaChaciagibkieoibsiawiaAiaajaejbijamjaq'
                  'jbujayjaCjackagkakkeokaskawkaAkaalaelailaulaylaClacmagmeo'
                  'mawmaAmaanaenaynaCncoohgdhwdheehyehcfhgfhwfhAfhaghCghaihC'
                  'ihcjhgjhwjhAjhekhykhglhwl')
    __version__ = 7.70


class Castle(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5014, short_name='Castle')
    __layout__ = ('0eaaccaceacgaciackaemacacaccaecagcaicakccmcdaeaceaeeageai'
                  'eakedmeaoecagacgaegaggaigakgcmgbogaqgdaiaciaeiagiaiiakidm'
                  'iaoicakackaekagkaikakkcmkeamccmcemcgmcimckmemmhddhfdhhdhj'
                  'dhdfhffhhfhjfhdhhfhhhhhjhhdjhfjhhjhjjoeeogeoieoegoggoigoe'
                  'iogioiivffvhfvfhvhhCgg')
    __version__ = 7.70


class CatandMouse(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5015, short_name='Cat and Mouse')
    __layout__ = ('0cfabhacjablacnabpacrabtacBacFabdbbvbbbcbxcbBccDcbFcahdaj'
                  'daldbzdbaecBebDecFeahfajfalfbagahhajhalhbuhbBhbbibsibwibF'
                  'ibqjbBjbckbokbxkbFkcelbglcilbklcmlbsmbwmbunbAocCocEocGohi'
                  'ehkehighkgohdojdoldohfojfolfohhojholhoBkoFloAnvievkevigvk'
                  'gvBlvFmCjdChfClfCjh')
    __version__ = 7.70


class Ceremonial(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5016, short_name='Ceremonial')
    __layout__ = ('0bcabeaajaalaanaapaaraataavabAabCabdcbfcbzcbBcaadapdaEdbe'
                  'ebgeanearebyebAeaafbifbkfapfbufbwfaEfbmgbsgaahaphaEhbmibs'
                  'iaajbijbkjapjbujbwjaEjbekbgkankarkbykbAkaalaplaElbdmbfmbz'
                  'mbBmbcobeoajoaloanoapoaroatoavobAobCohkahmahoahqahsahuaha'
                  'ehoehqehEehagipghEghaiipihEihakhokhqkhEkhkohmohoohqohsohu'
                  'oonaopaoraopeoahoEhopkonoopoorovph')
    __version__ = 7.70


class Checkered(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5017, short_name='Checkered')
    __layout__ = ('0baabCaacbbebagbbibakbbmbaobbqbasbbubawbbybaAbbcdaedbgdai'
                  'dbkdamdbodaqdbsdaudbwdaydbAdacfbefagfbifakfbmfaofbqfasfbu'
                  'fawfbyfaAfbchaehbghaihbkhamhbohaqhbshauhbwhayhbAhacjbejag'
                  'jbijakjbmjaojbqjasjbujawjbyjaAjbclaelbglailbklamlbolaqlbs'
                  'laulbwlaylbAlacnbenagnbinaknbmnaonbqnasnbunawnbynaAnbaobC'
                  'o')
    __version__ = 7.70


class Chip(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5018, short_name='Chip')
    __layout__ = ('0aeaaiaamaaqaatabecbgcbicbkcbmcbocbqcbscbucbwcaadbcdbydaA'
                  'dbeecgecieckecmecoecqecsecuebweaagbcgbegdggbigakgamgaogaq'
                  'gbsgdugbwgbygaAgbeicgiciickicmicoicqicsicuibwiaajbcjbyjaA'
                  'jbekbgkbikbkkbmkbokbqkbskbukbwkaemaimammaqmaum')
    __version__ = 7.70


class Columns(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5019, short_name='Columns')
    __layout__ = ('0egaaiaakaamaaoaaqaasaauaewaaebaybagcaicaocaucawceadbcdae'
                  'daydbAdeCdageekeameaoeaqeeseawebafbCfaggakgasgawgaahamheo'
                  'haqhaChagiakiasiawibajbCjagkdkkamkaokaqkeskawkealbclaelay'
                  'lbAleClagmaimaomaumawmaenaynegoaioakoamoaooaqoasoauoewohg'
                  'fhwfjghjwhhgjhwj')
    __version__ = 7.70


class Crown(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5020, short_name='Crown')
    __layout__ = ('0baabcabeabgabkabmaboabqabsabwabyabAabCabacaccaecbgcbkcam'
                  'cbocaqcbscbwcaycaAcbCcbaeaeebgebkeameaqebsebweayebCebagae'
                  'gbggbigbkgamgaqgbsgbugbwgaygbCgbaiaeiagiaiiakiamiaqiasiau'
                  'iawiayibCibakbCkbamacmaemagmaimakmbomasmaumawmaymaAmbCmba'
                  'obcobeobgobiobkoamobooaqobsobuobwobyobAobCo')
    __version__ = 7.70


class Cupola(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5021, short_name='Cupola')
    __layout__ = ('0aiaakaamaaoaaqaasaagbaubaecawcacdaydabfeofazfaahajhalhan'
                  'hapharhathaAhaajeojaAjablazlacnaynaeoawoagpaupaiqakqamqao'
                  'qaqqasqhjbhlbhnbhpbhrbhhchtchfdhvdhdehxehcghyghkhhmhhohhq'
                  'hhshhbihzihckhykhdmhxmhfnhvnhhohtohjphlphnphpphrpokcomcoo'
                  'coqcoidosdogeoueoefowfodholhonhophorhoxhodjoxjoelowlogmou'
                  'moinosnokoomoooooqovldvndvpdvjevrevhfvtfvfgvvgvmhvohvqhve'
                  'ivwivfkvvkvhlvtlvjmvrmvlnvnnvpnCifCsfCggCugCnhCphCfiCviCg'
                  'kCukCilCsl')
    __version__ = 7.70


class DeepWell(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5022, short_name='Deep Well')
    __layout__ = ('0acaaeaagaaiaakaamaaaccccceccgccicckccmcaocaaecceeeeegeei'
                  'eekecmeaoeaagccgeegekgcmgaogaaiccieeiekicmiaoiaakcckeekeg'
                  'keikekkcmkaokaamccmcemcgmcimckmcmmaomacoaeoagoaioakoamo')
    __version__ = 7.70


class Dragon(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5023, short_name='Dragon')
    __layout__ = ('0bgaaiaegceicdkccmcbocbqcbscbucawcaycaceaeeageaieakebmebo'
                  'eaqeaseaueaweayeadgbfgahgajgalgangapgaEgayhaChaaiaciaeiag'
                  'iaiiakiamiaoiaqiasiauiaAiaEiaCjabkadkafkahkajkalkaEkaamac'
                  'maemagmbimakmaaoacobeoagoaiockoamoixchdejhejigkkgjmghEhhb'
                  'ihdikhikjijliiniipihrihtihCihEjhckhgkhkkhbmhfmhboihopneoc'
                  'ioEiobn')
    __version__ = 7.70


class Dude(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5024, short_name='Dude')
    __layout__ = ('0bfabtabhbbjbblbbrbaBbatcavcaxcazcaedagdbldbndbpdbrdacebj'
                  'ebueayeaAeaCeaafbhfcmfcofcqfcsfbwfaEfbfgckgcugbygcphbAhbe'
                  'ickicuicpjbBjcjkclkcnkcrkctkcvkcjmclmcnmcrmctmcvmcpncjocv'
                  'ockqcmqcoqcqqcsqcuq')
    __version__ = 7.70


class Eagle(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5025, short_name='Eagle', game_type=gi.GT.HIDDEN)
    __layout__ = ('0cmadoacqaasbbmcbocaedagdaudawdbcebieakebmeboeaqebsebyeae'
                  'fagfaufawfbcgbigakgbmgbogaqgbsgbygaehaghauhawhaaiacibmibo'
                  'iayiaAibejbwjaakackbmkbokaykaAkaambkmanmbqmaAmcioclocpocs'
                  'oheehgehuehweheghgghughwghbihzihbkhzkomdoododeofeoheoteov'
                  'eoxeomfoofodgofgohgotgovgoxgomhoohobjomjoojozjvndveevgevu'
                  'evwevnfvegvggvugvwgvnhvnjCfeCveCfgCvg')
    __version__ = 7.70


class Enterprise(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5026, short_name='Enterprise')
    __layout__ = ('0agaaiaakaamaaoaaqaasaauaawaayaaacbccbecbgcbicbkcbmcbocbq'
                  'cbscbucbwcbycbAcbCcaEcdqedogdmhaAiaajbcjcejdgjeijekjemjeo'
                  'jcqjayjaCjaAkhhaijailainaipairaitaivahxaiAjodcofcohcojcol'
                  'concopcorcotcovcoxcozcoBcvkavmavoavqavsavecvgcvicvkcvmcvo'
                  'cvqcvscvucvwcvycChcCjcClcCncCpcCrcCtcCvc')
    __version__ = 7.70


class Eye(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5027, short_name='Eye')
    __layout__ = ('0amaaoaakbaqbaicamcaocascagdakdaqdaudaeeaieameaoeaseaweac'
                  'fagfakfaqfaufayfaagaegaigamgaogasgawgaAgachaghakhaqhauhay'
                  'haeiaiiamiaoiasiawiagjakjaqjaujaikamkaokaskaklaqlammaomhl'
                  'bhobhjchqchhdhldhodhsdhfehjehqehuehdfhhfhlfhofhsfhwfhfghj'
                  'ghqghughdhhhhhlhhohhshhwhhfihjihqihuihhjhljhojhsjhjkhqkhl'
                  'lhololcoocojdoqdoheoleooeoseoffojfoqfoufohgolgoogosgowgof'
                  'hojhoqhouhohioliooiosiojjoqjolkookvldvodvjevqevhfvlfvofvs'
                  'fvfgvjgvqgvhhvlhvohvshvjivqivljvoj')
    __version__ = 7.70


class F15Eagle(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5028, short_name='F-15 Eagle')
    __layout__ = ('0aobaqbasbaubbEcbGcandapdardatdalebDebFeajfanfapfarfalgat'
                  'gavgaxgazgaBgaDgabhadhafhahhajhanhapharhaliatiaviaxiaziaB'
                  'iaDiajjanjapjarjalkbDkbFkanlaplarlatlbEmbGmaonaqnasnaunhp'
                  'ahrahtahvahochqchschuchmehoehqehsehifhkfhmghoghqghsghughw'
                  'ghyghAghCgiahichjehjghjihjkhhmihoihqihsihuihwihyihAihCihi'
                  'jhkjhmkhokhqkhskhomhqmhsmhumhpohrohtohvoozfoBfoDfomhozjoB'
                  'joDjvAfvCfvAjvCjCBfCDfCfhChhCjhCBjCDj')
    __version__ = 7.70


class Farandole(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5029, short_name='Farandole')
    __layout__ = ('0beabgabmaboabqabwabyabcbbibbkbbsbbubbAbafcaxcbbdbBdckecm'
                  'ecqecsebbfbgfcifcufbwfbBfbegbygbahbchajhblhcnhcphbrhathbA'
                  'hbChbeibyibbjbgjcijcujbwjbBjckkcmkcqkcskbblbBlafmaxmbcnbi'
                  'nbknbsnbunbAnbeobgobmoboobqobwobyo')
    __version__ = 7.70


class Fish(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5030, short_name='Fish')
    __layout__ = ('0afaajaasaauaawabhbaobaqbaybaccamcbscbucbwcaAcakdbodbqday'
                  'daCdaceaeeaiebmebsebuebweaEeagfbkfbofbqfayfaCfacgaegaigbm'
                  'gbsgbugbwgaAgaEgakhbohbqhbyhaChaciamibsibuibwiaAiaojaqjay'
                  'jahkaskaukawkbjlcemalmbcndgnbCnaaoeioaqoasodAoaEodkpbopbu'
                  'pdypcmqcwqhcdhcfhefhifhchoreoteolfonfopfovforgotgovhoxh')
    __version__ = 7.70


class FivePyramids(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5031, short_name='Five Pyramids')
    __layout__ = ('0aaaacaaeaagaayaaAaaCaaEaaacaccaecagcapcaycaAcaCcaEcaaeac'
                  'eaeeageapeayeaAeaCeaEeaagacgaegaggangapgargaygaAgaCgaEgal'
                  'hathaniapiariaakackaekagkapkaykaAkaCkaEkaamacmaemagmapmay'
                  'maAmaCmaEmaaoacoaeoagoayoaAoaCoaEoaaqacqaeqagqayqaAqaCqaE'
                  'qhbbhdbhfbhzbhBbhDbhbdhddhfdhpdhzdhBdhDdhbfhdfhffipfhzfhB'
                  'fhDfhnhhphhrhipjhblhdlhflhplhzlhBlhDlhbnhdnhfnhznhBnhDnhb'
                  'phdphfphzphBphDpoccoecoAcoCcoceoeeoAeoCeoohoqhocmoemoAmoC'
                  'mocooeooAooCovddvBdvphvdnvBn')
    __version__ = 7.70


class FivePyramids2(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5032, short_name='Five Pyramids 2',
                    game_type=gi.GT.HIDDEN)
    __layout__ = ('0aoaaabacbaebagbawbaybaAbaCbbocaadacdaedagdaidakdamdaqdas'
                   'daudawdaydaAdaCdcoeaafacfaefagfawfayfaAfaCfamgdogaqgadhaz'
                   'hagibiickidmidoidqicsibuiawiadjazjamkdokaqkaalaclaelaglaw'
                   'laylaAlaClcomaanacnaenagnainaknamnaqnasnaunawnaynaAnaCnbo'
                   'oaapacpaepagpawpaypaApaCpaoqhbchdchfchxchzchBchbehdehfehx'
                   'ehzehBehbmhdmhfmhxmhzmhBmhbohdohfohxohzohBoocdoedoydoAdoc'
                   'noenoynoAn')
    __version__ = 7.70


class Flowers(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5033, short_name='Flowers')
    __layout__ = ('0baaccaceabgaakabmaboaaqaauabwabyaaAadacdgcckccqccuccAcba'
                  'ecceceebgeakebmeboeaqeauebwebyeaAeadgangaxgafhahhajhalhap'
                  'harhathavhadianiaxiaakbckbekagkakkbmkbokaqkaukbwkbykaAkca'
                  'mcgmckmcqmcumcAmaaobcobeoagoakobmobooaqoauobwobyoaAoonaox'
                  'aoneoxeodkonkoxkodoonooxovdavde')
    __version__ = 7.70


class FlyingDragon(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5034, short_name='Flying Dragon',
                    game_type=gi.GT.POPULAR)
    __layout__ = ('0acaaeaagaaiaakaamaaoaaqaasaauaawaayaagcbicbkcbmcbocbqcbs'
                  'caucaeeagebieckecmecoecqebseaueaweacgaegaggbigckgdmgdogcq'
                  'gbsgaugawgaygaahaAhaChaciaeiagibiickidmidoicqibsiauiawiay'
                  'iaekagkbikckkcmkcokcqkbskaukawkagmbimbkmbmmbombqmbsmaumac'
                  'oaeoagoaioakoamoaooaqoasoauoawoayoCnh')
    __version__ = 7.70


class FortressTowers(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5035, short_name='Fortress Towers')
    __layout__ = ('0faaecadeacgabiabkacmadoaeqafsaeacaccagcaicakcamcaqcescda'
                  'eaceageaieakeameaqedsedagacgaggaigakgamgaqgdsgeaiaciagiai'
                  'iakiamiaqiesifakeckdekcgkbikbkkcmkdokeqkfskhjchjehjghji')
    __version__ = 7.70


class FullVision(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5036, short_name='Full Vision')
    __layout__ = ('0aaaaiaamaaoaaqaasaawaaEaacbaebagbaybaAbaCbaacaicamcaocaq'
                  'cascawcaEcacdaedagdaydaAdaCdaaeaieaweaEeaefamfasfaAfaggai'
                  'gakgaugawgaygaehamhashaAhagiaiiakiauiawiayiaejamjasjaAjaa'
                  'kaikawkaEkaclaelaglaylaAlaClaamaimaomaqmawmaEmacnaenagnam'
                  'nasnaynaAnaCnaaoaioaooaqoawoaEohpahbbhhbhnbhrbhxbhDbhdchf'
                  'chpchzchBchbdhhdhxdhDdhfghlghtghzghhhhjhhvhhxhhfihlihtihz'
                  'ihblhhlhxlhDlhdmhfmhzmhBmhbnhhnhnnhpnhrnhxnhDnooboqboccog'
                  'coycoCcoghokhouhoyhocmogmoymoCmvpb')
    __version__ = 7.70


class FullVision2(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5037, short_name='Full Vision 2')
    __layout__ = ('0aaaacaafaahaakaamaapaaraauaawaazaaBaaacaccafcahcakcamcap'
                  'carcaucawcazcaBcaaeaceafeaheakeameapeareaueaweazeaBeaagac'
                  'gafgahgakgamgapgargaugawgazgaBgaajacjaejagjakjamjapjarjav'
                  'jaxjazjaBjaalaclaelaglaklamlaplarlavlaxlazlaBlaeoagoaioak'
                  'oamoapoaroatoavoaxohbbhgbhlbhqbhvbhAbhadhcdhfdhhdhkdhmdhp'
                  'dhrdhudhwdhzdhBdhbfhgfhlfhqfhvfhAfhdjhyjhbkhfkhkkhmkhpkhr'
                  'khwkhAkhdlhylobcogcolcoqcovcoAcobeogeoleoqeoveoAeockoekol'
                  'koqkoxkozkvbdvgdvldvqdvvdvAdvdkvyk')
    __version__ = 7.70


class Future(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5038, short_name='Future')
    __layout__ = ('0cgaaiaakaamaboaaqaasaauacwaagccicakcamcbocaqcasccucawcae'
                  'eageaiebkebmeboebqebseaueaweayeacfaAfaagcegcggdigdkgdmgdo'
                  'gdqgdsgdugcwgcygaCgachaAhaeiagiaiibkibmiboibqibsiauiawiay'
                  'iagkcikakkamkbokaqkaskcukawkcgmaimakmammbomaqmasmaumcwmhc'
                  'ghAgoneopeoniopiClgCngCpgCrg')
    __version__ = 7.70


class Garden(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5039, short_name='Garden')
    __layout__ = ('0adaafaaoaaqaazaaBaaabaibalbatbawbaEbaccaecagcancapcarcay'
                  'caAcaCcaadaidaldatdawdaEdaceaeeageaneapeareayeaAeaCeaafai'
                  'falfatfawfaEfachaehaghanhapharhayhaAhaChaajaijaljatjawjaE'
                  'jackaekagkankapkarkaykaAkaCkaalailallatlawlaElacmaemagman'
                  'mapmarmaymaAmaCmaanainalnatnawnaEnadoafoaooaqoazoaBoheahp'
                  'ahAahcdhedhgdhndhpdhrdhydhAdhCdhdhhfhhohhqhhzhhBhhclhelhg'
                  'lhnlhplhrlhylhAlhClheohpohAooddofdoodoqdozdoBdoehophoAhod'
                  'loflooloqlozloBlvedvpdvAdvelvplvAl')
    __version__ = 7.70


class Gayles(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5040, short_name='Gayleʼs')
    __layout__ = ('0dcaceabgaaiaakaamaaoaaqaasabuacwadyaagcbicckccmccoccqcbs'
                  'caucakebmeboeaqeacgaegaggbigbkgbmgbogbqgbsgaugawgaygaahaA'
                  'haciaeiagibiibkibmiboibqibsiauiawiayiakkbmkbokaqkagmbimck'
                  'mcmmcomcqmbsmaumdcoceobgoaioakoamoaooaqoasobuocwodyoojhol'
                  'honhophorhvncvmhvohvnmCnh')
    __version__ = 7.70


class Glade(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5041, short_name='Glade')
    __layout__ = ('0aaaacaaCaaEaaacaccaCcaEcahdejdcldcndbpdcrdctdevdaxddhfcj'
                  'fblfbnfbpfbrfbtfcvfdxfchhbjhblhanharhbthbvhcxhdhjcjjbljbn'
                  'jbpjbrjbtjcvjdxjahlejlcllcnlbplcrlctlevlaxlaamacmaCmaEmaa'
                  'oacoaCoaEohbahDahbchDchbmhDmhbohDoobboDbobnoDn')
    __version__ = 7.70


class HforHaga(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5042, short_name='H for Haga')
    __layout__ = ('0aaaacaaeaagaakaamaaoaaqaaacaccaecagcakcamcaocaqcaaeaceae'
                  'eageakeameaoeaqeaifaagacgaegaggakgamgaogaqgaihaaiaciaeiag'
                  'iakiamiaoiaqiaijaakackaekagkakkamkaokaqkaamacmaemagmakmam'
                  'maomaqmaaoacoaeoagoakoamoaooaqohbbhdbhfbhlbhnbhpbhbdhddhf'
                  'dhldhndhpdhbfhdfhffhlfhnfhpfhhghjghbhhdhhfhhlhhnhhphhhihj'
                  'ihbjhdjhfjhljhnjhpjhblhdlhflhllhnlhplhbnhdnhfnhlnhnnhpnoc'
                  'coecomcoococeoeeomeooeocgoegomgoogoghoihokhocioeiomiooioc'
                  'koekomkookocmoemommoomvddvndvdlvnl')
    __version__ = 7.70


class HforHagaTraditional(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5043, short_name='H for Haga Traditional',
                    game_type=gi.GT.HIDDEN)
    __layout__ = ('0acaaeaagaaiaakaamaaoaaqaasaauaawaayabgcbicakcamcaocaqcbs'
                  'cbucaeebgebieakeameaoeaqebsebueaweacgaegbggbigbkgbmgbogbq'
                  'gbsgbugawgaygaahaAhaciaeibgibiibkibmiboibqibsibuiawiayiae'
                  'kbgkbikakkamkaokaqkbskbukawkbgmbimakmammaomaqmbsmbumacoae'
                  'oagoaioakoamoaooaqoasoauoawoayoklcknckpchdhhxhklmknmkpm')
    __version__ = 7.70


class Helios(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5044, short_name='Helios')
    __layout__ = ('0eaadcaduaewadacbccbucdwcbaeaceaeeaiedkedmeaoeaseauebweba'
                  'gacgaegaggdigdogaqgasgaugbwgblhbaiaciaeiagidiidoiaqiasiau'
                  'ibwibakackaekaikdkkdmkaokaskaukbwkdambcmbumdwmeaodcoduoew'
                  'ohchhehhghhqhhshhuhCleCihCohClk')
    __version__ = 7.70


class HighandLow(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5045, short_name='High and Low')
    __layout__ = ('0eaadcaceabgaaiabkacmadoaeqadaccccdecagcbicckcbmceocdqcca'
                  'ebceeeebgeciedkeamedoecqebagacgdegcggdigekgbmgcogbqgaaibc'
                  'iceidgieiidkicmiboiaqiaekagkbikakkamkahmajmhim')
    __version__ = 7.70


class Hourglass(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5046, short_name='Hourglass', game_type=gi.GT.HIDDEN)
    __layout__ = ('0aaaacaaeaagaaiaakaamaaoaaqaasaauaawaayaaacamcaycacdawdaa'
                  'eaeeameaueayeacfagfasfawfaagaegaigamgaqgaugaygachaghbkhbo'
                  'hashawhaaiaeiaiiamiaqiauiayiacjagjasjawjaakaekamkaukaykac'
                  'lawlaamammaymaaoacoaeoagoaioakoamoaooaqoasoauoawoayohabhm'
                  'bhybhadhmdhydhcehwehafhefhufhyfhcghgghsghwghahhehhihhqhhu'
                  'hhyhhcihgihsihwihajhejhujhyjhckhwkhalhmlhylhanhmnhynoacoy'
                  'coaeoyeoagoygoaioyioakoykoamoymvadvydvafvyfvahvyhvajvyjva'
                  'lvylCaeCyeCagCygCaiCyiCakCyk')
    __version__ = 7.70


class Inca(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5047, short_name='Inca')
    __layout__ = ('0aoaaqaaibakbambasbaubawbbocbqcaidbkdbmdbsdbudawdcoecqeai'
                  'fbkfcmfcsfbufawfaagacgdogdqgaCgaEgahhbjhclhcthbvhaxhaaiac'
                  'idoidqiaCiaEiahjbjjcljctjbvjaxjaakackdokdqkaCkaEkailbklcm'
                  'lcslbulawlcomcqmainbknbmnbsnbunawnboobqoaipakpampaspaupaw'
                  'paoqaqqhbihDiCphCpj')
    __version__ = 7.70


class InnerCircle(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5048, short_name='Inner Circle')
    __layout__ = ('0aaaacaayaaAaaaceccceccgcbicbkcamcaocbqcbsccuccwceycaAccc'
                  'ecyedgfcifbkfbqfcsfdufbcgbygaghbuhbcibyiegjdijckjbmjbojcq'
                  'jdsjeujcckcykaamecmcemcgmbimbkmbqmbsmcumcwmdymaAmaaoacoak'
                  'oaqoayoaAo')
    __version__ = 7.70


class Joker(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5049, short_name='Five Pyramids')
    __layout__ = ('0aaaaAaadbafbahbajbalbanbapbarbatbavbaxbabdbddbfdbhdbjdbl'
                  'dbndbpdbrdbtdbvdbxdazdcbfbdfaffahfajfalfanfapfarfatfavfbx'
                  'fczfcbhbdhafhavhbxhczhajiamiapiasicbjbdjafjavjbxjczjcblbd'
                  'laflahlajlallanlaplarlatlavlbxlczlabnbdnbfnbhnbjnblnbnnbp'
                  'nbrnbtnbvnbxnaznadpafpahpajpalpanpapparpatpavpaxpaaqaAqhg'
                  'ghughgkhuk')
    __version__ = 7.70


class KforKyodai(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5050, short_name='K for Kyodai',
                    game_type=gi.GT.HIDDEN)
    __layout__ = ('0caaccaceacmacoacqacacbcccecckcbmccoccaebceceeciebkecmeca'
                  'gbcgcegcggbigckgcaibcibeibgiciicakbckcekcgkbikckkcambcmce'
                  'mcimbkmcmmcaobcoceockobmocoocaqccqceqcmqcoqcqq')
    __version__ = 7.70


class KforKyodaiTraditional(mgame.AbstractMahjonggGame):
    __info__ = dict(id=5051, short_name='K for Kyodai Traditional')
    __layout__ = ('0acaaeaagaaiaakaamaaoaaqaasaauaawaayaagcaicakcamcaocaqcas'
                  'caucaeeageaieakeameaoeaqeaseaueaweacgaegaggaigakgamgaogaq'
                  'gasgaugawgaygaahaAhaciaeiagiaiiakiamiaoiaqiasiauiawiayiae'
                  'kagkaikakkamkaokaqkaskaukawkagmaimakmammaomaqmasmaumacoae'
                  'oagoaioakoamoaooaqoasoauoawoayokjckrckpdkjehgfknfhufkjghg'
                  'hklhhuhkjihgjknjhujkjkkplkjmkrm')
    __version__ = 7.70


PROVIDES = [Altar, Arena, Arena2, Arrow, ArtModerne, Balance, Bat, Beatle,
            BigHole, Bizarre, Boat, Bug, Butterfly, Castle, CatandMouse,
            Ceremonial, Checkered, Chip, Columns, Crown, Cupola, DeepWell,
            Dragon, Dude, Eagle, Enterprise, Eye, F15Eagle, Farandole, Fish,
            FivePyramids, FivePyramids2, Flowers, FlyingDragon,
            FortressTowers, FullVision, FullVision2, Future, Garden, Gayles,
            Glade, HforHaga, HforHagaTraditional, Helios, HighandLow,
            Hourglass, Inca, InnerCircle, Joker, KforKyodai,
            KforKyodaiTraditional]